// example on constructors and destructors
#include <iostream>
#include <string.h>
#include <vector>
#include <map>
#include <stdio.h>
#include <boost/foreach.hpp>
using namespace std;
using namespace boost;



int main () {
	vector<int*> vecp;
	for (int i = 0; i < 10000000; i++) {
		vecp.push_back(new int(i));
	}

	/*BOOST_FOREACH(int* j, vecp) {
			cerr << *j << "," ;
	}
	cerr << endl;
*/
	/*vector<int*> vec2p;
	vec2p.assign(vecp.begin(), vecp.end());*/

	BOOST_FOREACH(int* i, vecp) {
		delete i;
	}
	vecp.clear();

	/*cerr << vecp.size() << endl;


	BOOST_FOREACH(int* j, vec2p) {
		cerr << *j << ",";
	}
	cerr << endl;*/

return -1 ;

}
